home *** CD-ROM | disk | FTP | other *** search
- 0010 // DELETE "0:PROC.1520PLOTTER"
- 0020 // LIST "0:PROC.1520PLOTTER"
- 0030 //
- 0040 // ╨ROCEEDURES FOR USE WITH
- 0050 // ├OMMODORE 1520 PLOTTER/PRINTER
- 0060 // ┬Y: ╒NICOMAL,┴╨╙--┴BSTRACTED
- 0070 // FROM CARTRIDGE DEMO DISK #3
- 0080 //
- 0090 ╨╥╧├ USE'1520
- 0100 XCOR:=0; YCOR:=0
- 0110 TWOPI:=2*╨╔
- 0120 RAD:=╨╔/180
- 0130 BLACK:=0
- 0140 BLUE:=1
- 0150 GREEN:=2
- 0160 RED:=3
- 0170 HOME
- 0180 PENCOLOR(BLACK)
- 0190 SETHEADING(0)
- 0200 DOWN:=╘╥╒┼
- 0210 ┼╬─╨╥╧├ USE'1520
- 0220
- 0230 //--- LOW LEVEL I/O ---//
- 0240
- 0250 ╨╥╧├ TALK(SA$,TEXT$)
- 0260 ╧╨┼╬ ╞╔╠┼ 100,"U6:/S"+SA$,╫╥╔╘┼
- 0270 ╨╥╔╬╘ ╞╔╠┼ 100: TEXT$
- 0280 ├╠╧╙┼ ╞╔╠┼ 100
- 0290 ┼╬─╨╥╧├ TALK
- 0300
- 0310 //--- X-Y GRAPHICS ---//
- 0320
- 0330 ╨╥╧├ PLOTTEXT(X,Y,TEXT$)
- 0340 MOVETO(X,Y)
- 0350 ╔╞ DOWN ╘╚┼╬ TALK("0",TEXT$)
- 0360 MOVETO(X,Y)
- 0370 ┼╬─╨╥╧├ PLOTTEXT
- 0380
- 0390 ╨╥╧├ MOVETO(X,Y)
- 0400 XCOR:=X; YCOR:=Y
- 0410 TALK("1","M"+╙╘╥$(╔╬╘(X))+" "+╙╘╥$(╔╬╘(Y)))
- 0420 ┼╬─╨╥╧├ MOVETO
- 0430
- 0440 ╨╥╧├ MOVE(X,Y)
- 0450 MOVETO(XCOR+X,YCOR+Y)
- 0460 ┼╬─╨╥╧├ MOVE
- 0470
- 0480 ╨╥╧├ DRAWTO(X,Y)
- 0490 ╔╞ DOWN ╘╚┼╬
- 0500 XCOR:=X; YCOR:=Y
- 0510 TALK("1","D"+╙╘╥$(╔╬╘(X))+" "+╙╘╥$(╔╬╘(Y)))
- 0520 ┼╠╙┼
- 0530 MOVETO(X,Y)
- 0540 ┼╬─╔╞
- 0550 ┼╬─╨╥╧├ DRAWTO
- 0560
- 0570 ╨╥╧├ DRAW(X,Y)
- 0580 DRAWTO(XCOR+X,YCOR+Y)
- 0590 ┼╬─╨╥╧├ DRAW
- 0600
- 0610 ╨╥╧├ HOME
- 0620 TALK("1","H")
- 0630 ┼╬─╨╥╧├ HOME
- 0640
- 0650 ╨╥╧├ ARC(X,Y,R,START,BUE)
- 0660 V:=START*RAD; BUE:=BUE*RAD
- 0670 ANTALV:=╔╬╘(BUE*16)
- 0680 DV:=BUE/ANTALV
- 0690 MOVETO(X+R*├╧╙(V),Y+R*╙╔╬(V))
- 0700 ╞╧╥ I#:=1 ╘╧ ANTALV ─╧
- 0710 V:+DV
- 0720 DRAWTO(X+R*├╧╙(V),Y+R*╙╔╬(V))
- 0730 ┼╬─╞╧╥ I#
- 0740 ┼╬─╨╥╧├ ARC
- 0750
- 0760 ╨╥╧├ CIRCLE(X,Y,R)
- 0770 ARC(X,Y,R,0,360)
- 0780 ┼╬─╨╥╧├ CIRCLE
- 0790
- 0800 ╨╥╧├ PENCOLOR(C)
- 0810 COLOR:=C
- 0820 TALK("2",╙╘╥$(COLOR))
- 0830 ┼╬─╨╥╧├ PENCOLOR
- 0840
- 0850 ╨╥╧├ TEXTSTYLE(LINELENGTH,DIREC#)
- 0860 ╔╞ LINELENGTH<=10 ╘╚┼╬
- 0870 TALK("3","3")
- 0880 ┼╠╔╞ LINELENGTH<=20 ╘╚┼╬
- 0890 TALK("3","2")
- 0900 ┼╠╔╞ LINELENGTH<=40 ╘╚┼╬
- 0910 TALK("3","1")
- 0920 ┼╠╙┼
- 0930 TALK("3","0")
- 0940 ┼╬─╔╞
- 0950 TALK("4",╙╘╥$(DIREC#))
- 0960 ┼╬─╨╥╧├ TEXTSTYLE
- 0970
- 0980 ╨╥╧├ LINETYPE(T#)
- 0990 TALK("5",╙╘╥$(T#))
- 1000 ┼╬─╨╥╧├ LINETYPE
- 1010
- 1020 ╨╥╧├ SELECTFONT(F#)
- 1030 TALK("6",╙╘╥$(F#))
- 1040 ┼╬─╨╥╧├ SELECTFONT
- 1050
- 1060 ╨╥╧├ RESET1520
- 1070 TALK("7","")
- 1080 ┼╬─╨╥╧├ RESET1520
- 1090
- 1100 //--- TURTLE GRAPHICS ---//
- 1110
- 1120 ╨╥╧├ SETHEADING(A)
- 1130 ╫╚╔╠┼ A<0 ─╧ A:+360
- 1140 ╫╚╔╠┼ A>=360 ─╧ A:-360
- 1150 HEADING:=A; A:=(90-A)*RAD
- 1160 COSA:=├╧╙(A); SINA:=╙╔╬(A)
- 1170 ┼╬─╨╥╧├ SETHEADING
- 1180
- 1190 ╨╥╧├ LEFT(A)
- 1200 SETHEADING(HEADING-A)
- 1210 ┼╬─╨╥╧├ LEFT
- 1220
- 1230 ╨╥╧├ RIGHT(A)
- 1240 SETHEADING(HEADING+A)
- 1250 ┼╬─╨╥╧├ RIGHT
- 1260
- 1270 ╨╥╧├ FORWARD(D)
- 1280 DRAW(D*COSA,D*SINA)
- 1290 ┼╬─╨╥╧├ FORWARD
- 1300
- 1310 ╨╥╧├ BACK(D)
- 1320 DRAW(-D*COSA,-D*SINA)
- 1330 ┼╬─╨╥╧├ BACK
- 1340
- 1350 ╨╥╧├ PENDOWN
- 1360 DOWN:=╘╥╒┼
- 1370 ┼╬─╨╥╧├ PENDOWN
- 1380
- 1390 ╨╥╧├ PENUP
- 1400 DOWN:=╞┴╠╙┼
- 1410 ┼╬─╨╥╧├ PENUP
- 1420
- 1430 ╨╥╧├ SETXY(X,Y)
- 1440 DRAWTO(X,Y)
- 1450 ┼╬─╨╥╧├ SETXY
- 1460
- 1470 ╨╥╧├ SHOWTURTLE
- 1480 ┼╬─╨╥╧├ SHOWTURTLE
- 1490
- 1500 ╨╥╧├ HIDETURTLE
- 1510 ┼╬─╨╥╧├ HIDETURTLE
- 1520
- 1530 ╨╥╧├ TEXTSCREEN
- 1540 ┼╬─╨╥╧├ TEXTSCREEN
- 1550
- 1560 ╨╥╧├ GRAPHICSCREEN(MODE)
- 1570 ┼╬─╨╥╧├ GRAPHICSCREEN
- 1580
- 1590 ╨╥╧├ FULLSCREEN
- 1600 ┼╬─╨╥╧├ FULLSCREEN
- 1610
- 1620 ╨╥╧├ SPLITSCREEN
- 1630 ┼╬─╨╥╧├ SPLITSCREEN
- 1640
-